1. Technical Field
The present teaching relates to methods, systems, and programming for telecommunications of notifications or the like, for example, via mobile network text messages.
2. Discussion of Technical Background
With the advancement of telecommunication technologies, wireless communications have expanded in recent decades from traditional voice communications to other types of communication forms such as data and text messages. Text message based communications include electronic mails and short messages. In recent years, short message service (SMS) has become ubiquitous and popular in both the United States and foreign countries because it is not only easy to do and often costs much less to an end user. FIG. 1(a) (Prior Art) illustrates a part of a traditional network configuration that supports SMS communications. In FIG. 1(a), a message server 140 receives an incoming short message request 130 to send a short message (either created based on a request or received) to a routing entity 170 via which the short message is to be delivered to specified destinations via a network 160 to a routing entity 170. For example, the routing entity 170 may send the short message to the intended recipient via a process (not shown) by forwarding the short message to another message server which may then connects to the intended recipient to deliver the message.
In this configuration, the message server 140 can be an external short message entity (ESME) server or a short message service center (SMSC) server. The routing entity 170 can be a short message peer to peer (SMPP) gateway, an ESME server, or a SMSC server. The source of the short message request 130 may be from automated applications that can generate or received high volumes of a messages. For example, a mobile service provider may have automated systems that use a message center such as an ESME server to send notifications to its customers regarding account activities or the like. For a large network service provider with many customers, the automated notifications may generate a high volume of SMS notification message traffic.
Traditionally, a message server such as 140 can connect with a routing entity via a single bind 150. That is, for each message to be sent from the message server 140 to the routing entity 170, the message server 140 sends the message to the routing entity 170. As multiple message servers may send and receive short messages from the same routing entity and the routing entity 170 usually has a limited capacity to handle the traffic, in order to manage the bandwidth of the traffic, a routing entity usually places a limit on each message server bind so that the number of text message notifications that can be sent per second via each message server bind is restricted. When such set limitation is exceeded, the message server bind will throttle and in that situation, the routing entity will reject notification requests on that bind for a configured period of time. During this period of time, as no text message is allowed to be sent, it introduces a stall on the message server and ultimately the communications desired by the message server will have no ability to send messages.
Efforts have been made to overcome this problem. FIG. 1(b) (Prior Art) shows a conventional solution to the problem. With this solution, the message server 140, as shown in FIG. 1(a), is replaced with a message server cluster 180, which comprises a plurality of message server nodes, 180-a, . . . , 180-b, each of which is associated with a single bind, 190-a, . . . , 190-b, respectively. Although this solution can alleviate the problem to some extent, once a bind associated with a message server throttles, the same problem occurs which still affects an application's ability to communicate and, thus, it does not provide much advantage. The reason that this conventional solution does not solve the problem is that throttles still occur at the individual bind level. Consequently, neither the traditional system, as shown in FIG. 1(a), nor an improvement thereof, as shown in FIG. 1(b), allows such an SMS communication platform to scale as the need to send or receive a greater number of short messages per second grows in applications, such as those used for automated notifications or the like. Therefore, a more effective solution to the problem mentioned is needed.